package com.shinbada.modules.competitor.mapper;

import com.shinbada.modules.competitor.entity.DTO.CompetitorNoumenonDTO;
import com.shinbada.modules.competitor.entity.VO.CompetitorNoumenonResultVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.shinbada.core.persistence.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import com.shinbada.modules.competitor.entity.CompetitorNoumenon;

import java.util.List;

/**
 * 本体MAPPER接口
 * @author initcap
 * @version 2021-08-11
 */
@Mapper
@Repository
public interface CompetitorNoumenonMapper extends BaseMapper<CompetitorNoumenon> {
    /**
     * 通过筛选获取本体
     * @param competitorNoumenonDTO
     * @return
     */
    List<CompetitorNoumenonResultVO> getNoumenonTreeStructure(CompetitorNoumenonDTO competitorNoumenonDTO);

    /**
     * 根据系列id获取本体id数组
     * @param seriesId
     * @return
     */
    String[] selectNoumenonBySeriesId(String seriesId);

    /**
     * 根据本体id数组获取 本体数据结构树
     * @param noumenonIds
     */
    List<CompetitorNoumenonResultVO> getNoumenonTreeStructureByNoumenonIds(@Param("noumenonIds") String[] noumenonIds);

    /**
     * 跟据型号数据获取本体结构数据集合
     * @param competitorNoumenonDTO
     * @return
     */
    List<CompetitorNoumenonResultVO> getNoumenonTreesStructure(CompetitorNoumenonDTO competitorNoumenonDTO);
}
